package mx.ipn.escom.redes.gestionarequipo.dao;

import java.util.ArrayList;
import java.util.List;

import javax.inject.Named;
import javax.inject.Singleton;

import mx.ipn.escom.redes.equipo.model.Equipo;

import org.springframework.orm.hibernate4.support.HibernateDaoSupport;


@Singleton
@Named("equipoDao")
public class EquipoDao extends HibernateDaoSupport {
	
	public List<Equipo> findAll(){
		System.out.println("Finalmente en el dao");
		System.out.println(Equipo.class);
		List<Equipo> lista = new ArrayList<Equipo>();
		return getHibernateTemplate().loadAll(Equipo.class);
	}
	
	public Equipo findById(Integer id){
		return getHibernateTemplate().get(Equipo.class, id);
	}
	
	public List<Equipo> findByExample(Equipo entidad){
		return getHibernateTemplate().findByExample(entidad);
	}
	
	public Equipo save(Equipo entidad) {
		Equipo entidadAux = getHibernateTemplate().merge(entidad);
		getHibernateTemplate().save(entidadAux);
		return entidadAux;
	}
	
	public Equipo update(Equipo entidad){
		Equipo entidadAux = getHibernateTemplate().merge(entidad);
		getHibernateTemplate().update(entidadAux);
		return entidadAux;
	}
	
	public Equipo delete(Equipo entidad){
		Equipo entidadAux = getHibernateTemplate().merge(entidad);
		getHibernateTemplate().refresh(entidad);
		getHibernateTemplate().delete(entidadAux);
		return entidadAux;
	}

}
